clear
eststo clear
use "WTP replication data.dta"


gen trust_alt1 = m6_q501A
replace trust_alt1 = 1 if m6_q501A==5
replace trust_alt1 = 2 if m6_q501A==4
replace trust_alt1 = 4 if m6_q501A==2
replace trust_alt1 = 5 if m6_q501A==1

gen trust_alt2 = m6_q501B
replace trust_alt2 = 1 if m6_q501B==5
replace trust_alt2 = 2 if m6_q501B==4
replace trust_alt2 = 4 if m6_q501B==2
replace trust_alt2 = 5 if m6_q501B==1

gen trust_alt3 = m6_q501C
replace trust_alt3 = 1 if m6_q501C==5
replace trust_alt3 = 2 if m6_q501C==4
replace trust_alt3 = 4 if m6_q501C==2
replace trust_alt3 = 5 if m6_q501C==1

gen trust_alt4 = m6_q501D
replace trust_alt4 = 1 if m6_q501D==5
replace trust_alt4 = 2 if m6_q501D==4
replace trust_alt4 = 4 if m6_q501D==2
replace trust_alt4 = 5 if m6_q501D==1

gen trust_alt5 = m6_q501E
replace trust_alt5 = 1 if m6_q501E==5
replace trust_alt5 = 2 if m6_q501E==4
replace trust_alt5 = 4 if m6_q501E==2
replace trust_alt5 = 5 if m6_q501E==1

gen trust = trust_alt1 + trust_alt2 + trust_alt3 + trust_alt4 + trust_alt5

factor trust_alt1 trust_alt2 trust_alt3 trust_alt4 trust_alt5
rotate
predict factor1
rename factor1 trust_factor
label var trust_factor "Trust (general), factor"

egen mean_trust1 = mean(trust_alt1)
egen sd_trust1 = sd(trust_alt1)
egen mean_trust2 = mean(trust_alt2)
egen sd_trust2 = sd(trust_alt2)
egen mean_trust3 = mean(trust_alt3)
egen sd_trust3 = sd(trust_alt3)
egen mean_trust4 = mean(trust_alt4)
egen sd_trust4 = sd(trust_alt4)
egen mean_trust5 = mean(trust_alt5)
egen sd_trust5 = sd(trust_alt5)


gen trust1 = (trust_alt1 - mean_trust1) / sd_trust1
gen trust2 = (trust_alt2 - mean_trust2) / sd_trust2
gen trust3 = (trust_alt3 - mean_trust3) / sd_trust3
gen trust4 = (trust_alt4 - mean_trust4) / sd_trust4
gen trust5 = (trust_alt5 - mean_trust5) / sd_trust5

gen generaltrust = (trust1 + trust2 + trust3 + trust4 + trust5) / 5
gen trust_mean = (trust_alt1 + trust_alt2 + trust_alt3 + trust_alt4 + trust_alt5) / 5
label var trust_mean "Trust (mean)"

replace m7_q601_1_healthfree = 0 if m7_q601_1_health==0
replace m7_q601_2_educationfree = 0 if m7_q601_2_education==0
replace m7_q601_3_waterfree = 0 if m7_q601_3_water==0
replace m7_q601_4_cookingfuelfree = 0 if m7_q601_4_cookingfuel==0
replace m7_q601_5_foodfree = 0 if m7_q601_5_food==0

egen mean_entitlement1 = mean(m7_q601_1_healthfree)
egen sd_entitlement1 = sd(m7_q601_1_healthfree)
egen mean_entitlement2 = mean(m7_q601_2_educationfree)
egen sd_entitlement2 = sd(m7_q601_2_educationfree)
egen mean_entitlement3 = mean(m7_q601_3_waterfree)
egen sd_entitlement3 = sd(m7_q601_3_waterfree)
egen mean_entitlement4 = mean(m7_q601_4_cookingfuelfree)
egen sd_entitlement4 = sd(m7_q601_4_cookingfuelfree)
egen mean_entitlement5 = mean(m7_q601_5_foodfree)
egen sd_entitlement5 = sd(m7_q601_5_foodfree)

gen entitlement1 = (m7_q601_1_healthfree - mean_entitlement1) / sd_entitlement1
gen entitlement2 = (m7_q601_2_educationfree - mean_entitlement2) / sd_entitlement2
gen entitlement3 = (m7_q601_3_waterfree - mean_entitlement3) / sd_entitlement3
gen entitlement4 = (m7_q601_4_cookingfuelfree - mean_entitlement4) / sd_entitlement4
gen entitlement5 = (m7_q601_5_foodfree - mean_entitlement5) / sd_entitlement5

gen entitlement = (entitlement1 + entitlement2 + entitlement3 + entitlement4 + entitlement5) / 5
gen entitlement_nonnormal = m7_q601_1_healthfree + m7_q601_2_educationfree + m7_q601_3_waterfree + m7_q601_4_cookingfuelfree + m7_q601_5_foodfree

tabulate m8_q700A_select, generate(cost)
tabulate m8_q700B_select, generate(contrib)
tabulate m8_q700C_select, generate(timing)

gen gentrust_cost2 = generaltrust * cost2
gen gentrust_cost3 = generaltrust * cost3
gen gentrust_cost4 = generaltrust * cost4
gen gentrust_cost5 = generaltrust * cost5

gen gentrust_contrib2 = generaltrust * contrib2
gen gentrust_contrib3 = generaltrust * contrib3
gen gentrust_contrib4 = generaltrust * contrib4
gen gentrust_contrib5 = generaltrust * contrib5

gen gentrust_timing2 = generaltrust * timing2
gen gentrust_timing3 = generaltrust * timing3
gen gentrust_timing4 = generaltrust * timing4
gen gentrust_timing5 = generaltrust * timing5

gen entitlement_cost2 = entitlement * cost2
gen entitlement_cost3 = entitlement * cost3
gen entitlement_cost4 = entitlement * cost4
gen entitlement_cost5 = entitlement * cost5

gen entitlement_contrib2 = entitlement * contrib2
gen entitlement_contrib3 = entitlement * contrib3
gen entitlement_contrib4 = entitlement * contrib4
gen entitlement_contrib5 = entitlement * contrib5

gen entitlement_timing2 = entitlement * timing2
gen entitlement_timing3 = entitlement * timing3
gen entitlement_timing4 = entitlement * timing4
gen entitlement_timing5 = entitlement * timing5


label var generaltrust "Trust (general)"
label var m6_q502 "Trust (state)"
label var m6_q503_util "Trust (utility)"
label var entitlement "Entitlement"
label var m4_q301A_grid "Has electricity connection"

label var contrib1 "Contrib: Blank"
label var contrib2 "Contrib: 20\%"
label var contrib3 "Contrib: 40\%"
label var contrib4 "Contrib: 60\%"
label var contrib5 "Contrib: 80\%"

label var cost1 "Cost: Blank"
label var cost2 "Cost: 10000"
label var cost3 "Cost: 15000"
label var cost4 "Cost: 20000"
label var cost5 "Cost: 25000"

label var timing1 "Timing: Blank"
label var timing2 "Timing: Service begins in three months"
label var timing3 "Timing: Service begins in six months"
label var timing4 "Timing: Service begins in nine months"
label var timing5 "Timing: Service begins in twelve months"

label var gentrust_cost2 "Trust (general) * Cost: 10000"
label var gentrust_cost3 "Trust (general) * Cost: 15000"
label var gentrust_cost4 "Trust (general) * Cost: 20000"
label var gentrust_cost5 "Trust (general) * Cost: 25000"

label var entitlement_cost2 "Entitlement * Cost: 10000"
label var entitlement_cost3 "Entitlement * Cost: 15000"
label var entitlement_cost4 "Entitlement * Cost: 20000"
label var entitlement_cost5 "Entitlement * Cost: 25000"

label var gentrust_contrib2 "Trust (general) * Contrib: 20\%"
label var gentrust_contrib3 "Trust (general) * Contrib: 40\%"
label var gentrust_contrib4 "Trust (general) * Contrib: 60\%"
label var gentrust_contrib5 "Trust (general) * Contrib: 80\%"

label var entitlement_contrib2 "Entitlement * Contrib: 20\%"
label var entitlement_contrib3 "Entitlement * Contrib: 40\%"
label var entitlement_contrib4 "Entitlement * Contrib: 60\%"
label var entitlement_contrib5 "Entitlement * Contrib: 80\%"

label var gentrust_timing2 "Trust (general) * Timing: Service begins in three months"
label var gentrust_timing3 "Trust (general) * Timing: Service begins in six months"
label var gentrust_timing4 "Trust (general) * Timing: Service begins in nine months"
label var gentrust_timing5 "Trust (general) * Timing: Service begins in twelve months"

label var entitlement_timing2 "Entitlement * Timing: Service begins in three months"
label var entitlement_timing3 "Entitlement * Timing: Service begins in six months"
label var entitlement_timing4 "Entitlement * Timing: Service begins in nine months"
label var entitlement_timing5 "Entitlement * Timing: Service begins in twelve months"

rename m8_q701 wtp
rename m8_q702 rating

gen hours = (m4_q302A + m4_q302B + m4_q302C) / 3
replace hours = 0 if m4_q301A_grid==0
label var hours "Electricity hours"
gen caste = 0
replace caste = 1 if m3_q208==4
replace caste = 1 if m3_q208==3
label var caste "Scheduled Caste/Tribe (dummy)"
gen hindu = 0
replace hindu = 1 if m3_q207_rel==1
label var hindu "Hindu (dummy)"
gen education = m3_q209
label var education "Education"
gen rural = 0
replace rural = 1 if m1_q00_==1
label var rural "Rural (dummy)"

gen householdsize = m3_q204_hou
gen householdspend = log(m3_q212_hou + 1)
label var householdsize "Household size"
label var householdspend "Household spending (log)"

gen rationcard = m3_q211_rat
label var rationcard "Ration card"

gen statetrust = m6_q502
label var statetrust "Trust (state)"
gen utilitytrust = m6_q503_ut
label var utility "Trust (utility)"

replace statetrust = 2 if m6_q502==4
replace statetrust = 1 if m6_q502==5
replace statetrust = 5 if m6_q502==1
replace statetrust = 4 if m6_q502==2
replace utilitytrust = 2 if m6_q503_ut==4
replace utilitytrust = 1 if m6_q503_ut==5
replace utilitytrust = 5 if m6_q503_ut==1
replace utilitytrust = 4 if m6_q503_ut==2


egen village = group(m2_q106_villagewardcode_unique)
egen respondent = group(m1_q001_householdid)


gen rating_dum = 0
replace rating_dum = 1 if rating==4
replace rating_dum = 1 if rating==5


tab education, gen(educdum)
label var educdum1 "No education"
label var educdum2 "Primary school"
label var educdum3 "Secondary school"
label var educdum4 "High school"
label var educdum5 "Intermediate school"
label var educdum6 "Graduate"

gen wtp_log = log(wtp+1)
gen wtp_orig = wtp
replace wtp = 200 if wtp > 200 & wtp != .
gen wtp_dum = 0
replace wtp_dum = 1 if wtp > 0 & wtp != .
label var wtp_dum "WTP (dummy)"
label var wtp_log "WTP (log)"
label var wtp_orig "WTP (uncensored)"





***ANALYSIS***

***TABLE 1
sum wtp rating generaltrust entitlement m8_q700A_select m8_q700B_select m8_q700C_select

***FIGURE 4a
reg wtp generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard if firstconjoint==1, cluster(village)
parmest, saving(estimates.dta, replace) 
reg wtp generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village statetrust utilitytrust if firstconjoint==1, cluster(village)
parmest, saving(estimates_1.dta, replace)
preserve 
use estimates.dta, clear
drop if parm =="_cons"
drop if parm =="educdum2"
drop if parm =="educdum3"
drop if parm =="educdum4"
drop if parm =="educdum5"
drop if parm =="192o.village"
drop if parm =="statetrust"
drop if parm =="utilitytrust"
drop if parm =="1b.village"
gen first = 0
append using estimates_1.dta
drop if parm =="_cons"
drop if parm =="educdum2"
drop if parm =="educdum3"
drop if parm =="educdum4"
drop if parm =="educdum5"
drop if parm =="192o.village"
drop if parm =="statetrust"
drop if parm =="utilitytrust"
drop if parm =="1b.village"
drop in 22/212
replace first = 1 if first==.
*sort parm
gen numvar = .
replace numvar = _n
replace numvar = _n-11 if _n>11 & _n<14
replace numvar = _n-10 if _n>13
sort numvar first
drop numvar
gen numvar = _n
label var numvar "Variable"
sort numvar
label define numvar_label 1 "Trust" 3 "Entitlement"
label values numvar numvar_label
keep if parm=="generaltrust" | parm=="entitlement"
twoway rcap max95 min95 numvar if numvar==1 | numvar==3, graphregion(fcolor(white)) yline(0) lstyle(solid) lwidth(thick) graphregion(fcolor(white)) lcolor(eltblue) xlabel(1 3, valuelabels angle(vertical)) ytitle("Coefficient with 95% CI") xtitle("") scale(0.8) ||   ///
rcap max95 min95 numvar if numvar==2 | numvar==4, yline(0) lstyle(solid) lwidth(thick) lcolor(gold) ||   ///
       scatter estimate numvar, legend(label(1 "Baseline (R{superscript:2}: 0.047)") label(2 "Fixed Effects (R{superscript:2}: 0.234)") pos(7) ring(0)) ysc(r(-10 10)) ytick(-10(2)10) ylabel(-10(2)10) msize(large) mstyle(p1) msymbol(symbolstyle) mfcolor(white) mlcolor(black)
restore 


***FIGURE 4b
reg rating generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard if firstconjoint==1, cluster(village)
parmest, saving(estimates2.dta, replace) 
reg rating generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village statetrust utilitytrust if firstconjoint==1, cluster(village)
parmest, saving(estimates2_1.dta, replace)
preserve 
use estimates2.dta, clear
drop if parm =="_cons"
drop if parm =="educdum2"
drop if parm =="educdum3"
drop if parm =="educdum4"
drop if parm =="educdum5"
drop if parm =="192o.village"
drop if parm =="statetrust"
drop if parm =="utilitytrust"
drop if parm =="1b.village"
gen first = 0
append using estimates2_1.dta
drop if parm =="_cons"
drop if parm =="educdum2"
drop if parm =="educdum3"
drop if parm =="educdum4"
drop if parm =="educdum5"
drop if parm =="192o.village"
drop if parm =="statetrust"
drop if parm =="utilitytrust"
drop if parm =="1b.village"
drop in 22/212
replace first = 1 if first==.
*sort parm
gen numvar = .
replace numvar = _n
replace numvar = _n-11 if _n>11 & _n<14
replace numvar = _n-10 if _n>13
sort numvar first
drop numvar
gen numvar = _n
label var numvar "Variable"
sort numvar
label define numvar_label 1 "Trust" 3 "Entitlement"
label values numvar numvar_label
keep if parm=="generaltrust" | parm=="entitlement"
twoway rcap max95 min95 numvar if numvar==1 | numvar==3, graphregion(fcolor(white)) yline(0) lstyle(solid) lwidth(thick) graphregion(fcolor(white)) lcolor(eltblue) xlabel(1 3, valuelabels angle(vertical)) ytitle("Coefficient with 95% CI") xtitle("") scale(0.8) ||   ///
rcap max95 min95 numvar if numvar==2 | numvar==4, yline(0) lstyle(solid) lwidth(thick) lcolor(gold) ||   ///
       scatter estimate numvar, legend(label(1 "Baseline (R{superscript:2}: 0.024)") label(2 "Fixed Effects (R{superscript:2}: 0.191)") pos(7) ring(0)) ysc(r(-0.4 0.25)) ytick(-0.25(0.1)0.25) ylabel(-0.25(0.1)0.25) msize(large) mstyle(p1) msymbol(symbolstyle) mfcolor(white) mlcolor(black)
restore 


***FIGURE 5a
reg wtp contrib2-contrib5 cost2-cost5 timing2-timing5 generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard, cluster(respondent)
parmest, saving(estimates3.dta, replace) 
preserve 
use estimates3.dta, clear
drop in 13/28
gen numvar = .
replace numvar = _n
label var numvar "Variable"
label define numvar_label 1 "Contribution: 20%" 2 "Contribution: 40%" 3 "Contribution: 60%" 4 "Contribution: 80%" 5 "Cost: 10000" 6 "Cost: 15000" 7 "Cost: 20000" 8 "Cost: 25000" 9 "Timing: 3 months" 10 "Timing: 6 months" 11 "Timing: 9 months" 12 "Timing: 12 months"
label values numvar numvar_label
twoway rcap max95 min95 numvar if numvar < 5 & numvar > 0, yline(0) graphregion(fcolor(white)) lstyle(solid) lwidth(thick) lcolor(eltblue) ||   ///
rcap max95 min95 numvar if numvar > 4 & numvar < 9, legend(off) ytitle("Coefficient with 95% CI") xtitle("") scale(0.8) lstyle(solid) lwidth(thick) lcolor(red) xlabel(1/12, valuelabels angle(vertical))||   ///
rcap max95 min95 numvar if numvar > 8 & numvar < 13, lstyle(solid) lwidth(thick) lcolor(gold) ||   ///
       scatter estimate numvar, msize(large) mstyle(p1) msymbol(symbolstyle) mfcolor(white) mlcolor(black) ysc(r(-10 10)) ytick(-10(5)10) ylabel(-10(5)10)
restore



***FIGURE 5b
reg rating contrib2-contrib5 cost2-cost5 timing2-timing5 generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard, cluster(respondent)
parmest, saving(estimates4.dta, replace) 
preserve 
use estimates4.dta, clear
drop in 13/28
gen numvar = .
replace numvar = _n
label var numvar "Variable"
label define numvar_label 1 "Contribution: 20%" 2 "Contribution: 40%" 3 "Contribution: 60%" 4 "Contribution: 80%" 5 "Cost: 10000" 6 "Cost: 15000" 7 "Cost: 20000" 8 "Cost: 25000" 9 "Timing: 3 months" 10 "Timing: 6 months" 11 "Timing: 9 months" 12 "Timing: 12 months"
label values numvar numvar_label
twoway rcap max95 min95 numvar if numvar < 5 & numvar > 0, graphregion(fcolor(white)) yline(0) lstyle(solid) lwidth(thick) lcolor(eltblue) ||   ///
rcap max95 min95 numvar if numvar > 4 & numvar < 9, legend(off) ytitle("Coefficient with 95% CI") xtitle("") scale(0.8) lstyle(solid) lwidth(thick) lcolor(red) xlabel(1/12, valuelabels angle(vertical))||   ///
rcap max95 min95 numvar if numvar > 8 & numvar < 13, lstyle(solid) lwidth(thick) lcolor(gold) ||   ///
       scatter estimate numvar, msize(large) mstyle(p1) msymbol(symbolstyle) mfcolor(white) mlcolor(black) ysc(r(-0.25 0.25)) ytick(-0.25(.1)0.25) ylabel(-0.25(.1)0.25)
restore
eststo clear

***TABLE A2
*Balance Stats: NSS
*Age
gen age = 2017 - m3_q203_yearofbirth
sum age
*Male
tab m3_q201
*Scheduled Caste
gen sc = 0
replace sc = 1 if  m3_q208==3
tab sc
*Expenditures per capita
gen exp_pc = (m3_q212/1.41) / householdsize
sum exp_pc
*Hindu
tab hindu

***TABLE A3
sutex wtp rating generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum1 educdum2 educdum3 educdum4 educdum5 educdum6 rationcard statetrust utilitytrust if firstconjoint==1, labels nobs minmax

***TABLE A4
sutex wtp rating contrib1-contrib5 cost1-cost5 timing1-timing5, labels nobs minmax

***TABLE A5
corrtex wtp rating generaltrust entitlement statetrust utilitytrust if firstconjoint==1, file("Tables/CorrMatrix_Subject_Key.tex")

***TABLE A6
corrtex wtp rating generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum1 educdum2 educdum3 educdum4 educdum5 educdum6 rationcard statetrust utilitytrust if firstconjoint==1, file("Tables/CorrMatrix_Subject_Full.tex") replace

***TABLE A7
corrtex wtp rating contrib1-contrib5 cost1-cost5 timing1-timing5, replace file("Tables/CorrMatrix_Conjoint.tex")

***FIGURE A1
preserve
label var trust "Trust"
label var entitlement_nonnormal "Entitlement"
hist trust if firstconjoint==1, graphregion(fcolor(white)) color(blue) percent xsc(r(5 25)) xtick(5(5)25) xlabel(5(5)25)
hist entitlement_nonnormal, graphregion(fcolor(white)) color(blue) percent
restore

***FIGURE A2
hist wtp, mfcolor(white) percent graphregion(fcolor(white)) color(blue)

***TABLE A8
reg wtp generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard if firstconjoint==1, cluster(village)
reg wtp generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village if firstconjoint==1, cluster(village)
reg wtp generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard statetrust utilitytrust if firstconjoint==1, cluster(village)
reg wtp generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village statetrust utilitytrust if firstconjoint==1, cluster(village)
reg rating generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard if firstconjoint==1, cluster(village)
reg rating generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village if firstconjoint==1, cluster(village)
reg rating generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard statetrust utilitytrust if firstconjoint==1, cluster(village)
reg rating generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village statetrust utilitytrust if firstconjoint==1, cluster(village)

***TABLE A9
reg wtp contrib2-contrib5 cost2-cost5 timing2-timing5 generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard, cluster(respondent)
reg rating contrib2-contrib5 cost2-cost5 timing2-timing5 generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard, cluster(respondent)

***TABLE A10
reg wtp contrib2-contrib5 cost2-cost5 timing2-timing5 generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard gentrust_cost2 gentrust_cost3 gentrust_cost4 gentrust_cost5 gentrust_contrib2 gentrust_contrib3 gentrust_contrib4 gentrust_contrib5 gentrust_timing2 gentrust_timing3 gentrust_timing4 gentrust_timing5, cluster(respondent)
reg rating contrib2-contrib5 cost2-cost5 timing2-timing5 generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard gentrust_cost2 gentrust_cost3 gentrust_cost4 gentrust_cost5 gentrust_contrib2 gentrust_contrib3 gentrust_contrib4 gentrust_contrib5 gentrust_timing2 gentrust_timing3 gentrust_timing4 gentrust_timing5, cluster(respondent)

***TABLE A11
reg wtp contrib2-contrib5 cost2-cost5 timing2-timing5 generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard entitlement_cost2 entitlement_cost3 entitlement_cost4 entitlement_cost5 entitlement_contrib2 entitlement_contrib3 entitlement_contrib4 entitlement_contrib5 entitlement_timing2 entitlement_timing3 entitlement_timing4 entitlement_timing5, cluster(respondent)
reg rating contrib2-contrib5 cost2-cost5 timing2-timing5 generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard entitlement_cost2 entitlement_cost3 entitlement_cost4 entitlement_cost5 entitlement_contrib2 entitlement_contrib3 entitlement_contrib4 entitlement_contrib5 entitlement_timing2 entitlement_timing3 entitlement_timing4 entitlement_timing5, cluster(respondent)

***TABLE A12
tobit wtp generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard if firstconjoint==1, ul(200) cluster(village)
tobit wtp generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village if firstconjoint==1, ul(200) cluster(village)
tobit wtp generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard statetrust utilitytrust if firstconjoint==1, ul(200) cluster(village)
tobit wtp generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village statetrust utilitytrust if firstconjoint==1, ul(200) cluster(village)
ologit rating generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard if firstconjoint==1, cluster(village)
ologit rating generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village if firstconjoint==1, cluster(village)
ologit rating generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard statetrust utilitytrust if firstconjoint==1, cluster(village)
ologit rating generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village statetrust utilitytrust if firstconjoint==1, cluster(village)

***TABLE A13
tobit wtp contrib2-contrib5 cost2-cost5 timing2-timing5 generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard, ul(200) cluster(respondent)
ologit rating contrib2-contrib5 cost2-cost5 timing2-timing5 generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard, cluster(respondent)

***TABLE A14

logit wtp_dum generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard if firstconjoint==1, cluster(village)
logit wtp_dum generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village if firstconjoint==1, cluster(village)
logit wtp_dum generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard statetrust utilitytrust if firstconjoint==1, cluster(village)
logit wtp_dum generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village statetrust utilitytrust if firstconjoint==1, cluster(village)

***TABLE A15
logit wtp_dum contrib2-contrib5 cost2-cost5 timing2-timing5 generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard, cluster(respondent)

***TABLE A16
tobit wtp generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard if firstconjoint==1, ll(0) ul(200) cluster(village)
tobit wtp generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village if firstconjoint==1, ll(0) ul(200) cluster(village)
tobit wtp generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard statetrust utilitytrust if firstconjoint==1, ll(0) ul(200) cluster(village)
tobit wtp generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village statetrust utilitytrust if firstconjoint==1, ll(0) ul(200) cluster(village)

***TABLE A17
tobit wtp contrib2-contrib5 cost2-cost5 timing2-timing5 generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard, ll(0) ul(200) cluster(respondent)

***TABLE A18
reg wtp_log generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard if firstconjoint==1, cluster(village)
reg wtp_log generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village if firstconjoint==1, cluster(village)
reg wtp_log generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard statetrust utilitytrust if firstconjoint==1, cluster(village)
reg wtp_log generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village statetrust utilitytrust if firstconjoint==1, cluster(village)

***TABLE A19
reg wtp_log contrib2-contrib5 cost2-cost5 timing2-timing5 generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard, cluster(respondent)

***TABLE A20
reg wtp_orig generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard if firstconjoint==1, cluster(village)
reg wtp_orig generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village if firstconjoint==1, cluster(village)
reg wtp_orig generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard statetrust utilitytrust if firstconjoint==1, cluster(village)
reg wtp_orig generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village statetrust utilitytrust if firstconjoint==1, cluster(village)

***TABLE A21
reg wtp_orig contrib2-contrib5 cost2-cost5 timing2-timing5 generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard, cluster(respondent)

***TABLE A22
reg wtp generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard if firstconjoint==1 & m4_q301A_grid==1, cluster(village)
reg wtp generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village if firstconjoint==1 & m4_q301A_grid==1, cluster(village)
reg wtp generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard statetrust utilitytrust if firstconjoint==1 & m4_q301A_grid==1, cluster(village)
reg wtp generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village statetrust utilitytrust if firstconjoint==1 & m4_q301A_grid==1, cluster(village)
reg rating generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard if firstconjoint==1 & m4_q301A_grid==1, cluster(village)
reg rating generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village if firstconjoint==1 & m4_q301A_grid==1, cluster(village)
reg rating generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard statetrust utilitytrust if firstconjoint==1 & m4_q301A_grid==1, cluster(village)
reg rating generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village statetrust utilitytrust if firstconjoint==1 & m4_q301A_grid==1, cluster(village)

***TABLE A23
reg wtp contrib2-contrib5 cost2-cost5 timing2-timing5 generaltrust entitlement rural hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard if m4_q301A_grid==1, cluster(respondent)
reg rating contrib2-contrib5 cost2-cost5 timing2-timing5 generaltrust entitlement rural hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard if m4_q301A_grid==1, cluster(respondent)

***TABLE A24
gen assets = m5_q401 + m5_q402 + m5_q403 + m5_q404 + m5_q405 + m5_q406 + m5_q407 + m5_q408 + m5_q409 + m5_q410 + m5_q411 + m5_q412_
sum assets
sum assets if rural==1
sum assets if rural==0
label var assets "Household assets"
reg wtp generaltrust entitlement assets rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard if firstconjoint==1, cluster(village)
reg wtp generaltrust entitlement assets m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village if firstconjoint==1, cluster(village)
reg wtp generaltrust entitlement assets rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard statetrust utilitytrust if firstconjoint==1, cluster(village)
reg wtp generaltrust entitlement assets m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village statetrust utilitytrust if firstconjoint==1, cluster(village)
reg rating generaltrust entitlement assets rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard if firstconjoint==1, cluster(village)
reg rating generaltrust entitlement assets m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village if firstconjoint==1, cluster(village)
reg rating generaltrust entitlement assets rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard statetrust utilitytrust if firstconjoint==1, cluster(village)
reg rating generaltrust entitlement assets m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village statetrust utilitytrust if firstconjoint==1, cluster(village)

***TABLE A25

bys respondent: egen wtp_respondentmean = mean(wtp)
bys respondent: egen rating_respondentmean = mean(rating)
label var wtp_respondentmean "WTP (avg.)"
label var rating_respondentmean "Rating (avg.)"
reg wtp_respondentmean generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard if firstconjoint==1, cluster(village)
reg wtp_respondentmean generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village if firstconjoint==1, cluster(village)
reg wtp_respondentmean generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard statetrust utilitytrust if firstconjoint==1, cluster(village)
reg wtp_respondentmean generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village statetrust utilitytrust if firstconjoint==1, cluster(village)
reg rating_respondentmean generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard if firstconjoint==1, cluster(village)
reg rating_respondentmean generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village if firstconjoint==1, cluster(village)
reg rating_respondentmean generaltrust entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard statetrust utilitytrust if firstconjoint==1, cluster(village)
reg rating_respondentmean generaltrust entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village statetrust utilitytrust if firstconjoint==1, cluster(village)

***TABLE A26
reg wtp trust_mean entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard if firstconjoint==1, cluster(village)
reg wtp trust_mean entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village if firstconjoint==1, cluster(village)
reg wtp trust_mean entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard statetrust utilitytrust if firstconjoint==1, cluster(village)
reg wtp trust_mean entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village statetrust utilitytrust if firstconjoint==1, cluster(village)
reg rating trust_mean entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard if firstconjoint==1, cluster(village)
reg rating trust_mean entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village if firstconjoint==1, cluster(village)
reg rating trust_mean entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard statetrust utilitytrust if firstconjoint==1, cluster(village)
reg rating trust_mean entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village statetrust utilitytrust if firstconjoint==1, cluster(village)

***TABLE A27
reg wtp trust_factor entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard if firstconjoint==1, cluster(village)
reg wtp trust_factor entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village if firstconjoint==1, cluster(village)
reg wtp trust_factor entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard statetrust utilitytrust if firstconjoint==1, cluster(village)
reg wtp trust_factor entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village statetrust utilitytrust if firstconjoint==1, cluster(village)
reg rating trust_factor entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard if firstconjoint==1, cluster(village)
reg rating trust_factor entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village if firstconjoint==1, cluster(village)
reg rating trust_factor entitlement rural m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard statetrust utilitytrust if firstconjoint==1, cluster(village)
reg rating trust_factor entitlement m4_q301A_grid hours householdsize householdspend caste hindu educdum2 educdum3 educdum4 educdum5 educdum6 rationcard i.village statetrust utilitytrust if firstconjoint==1, cluster(village)

***TABLE A29

tab wtp if rating==5 & wtp > 20 & wtp != . & rating != .
tab wtp if rating==5 & wtp <= 20 & wtp != . & rating != .
tab wtp if rating < 5 & wtp > 20 & wtp != . & rating != .
tab wtp if rating < 5 & wtp <= 20 & wtp != . & rating != .
tab wtp if wtp!= . & rating != .
tab rating if wtp==0

